local 聊天记录 = class()
local insert = table.insert
local tp
local zt

function 聊天记录:初始化(根)
	self.ID = 165
	self.x = 175
	self.y = 54
	self.xx = 0
	self.yy = 0
	self.注释 = "聊天记录"
	self.可视 = false
	self.鼠标 = true
	self.焦点 = false
	self.可移动 = true
	self.窗口时间 = 0
	self.战斗移动 = true
	self.战斗显示=true
	tp = 根
	zt=tp.字体表.普通字体
	self.记录={}
	self.记录[3] = 根._丰富文本(340,360)
	:添加元素("xt",根.资源:载入('wzife.wdf',"网易WDF动画",0x43700E25)) --系统
	self.记录[4] = 根._丰富文本(340,360)
	:添加元素("sj",根.资源:载入('wzife.wdf',"网易WDF动画",0x1B1DCE56)) --世界
	self.记录[5] = 根._丰富文本(340,360)
	:添加元素("dw",根.资源:载入('wzife.wdf',"网易WDF动画",0xF9858C95)) --队伍
	self.记录[6] = 根._丰富文本(340,360)
	:添加元素("bp",根.资源:载入('wzife.wdf',"网易WDF动画",0xAD9D6490)) --帮派
	self.记录[7] = 根._丰富文本(340,360)
	:添加元素("dq",根.资源:载入('wzife.wdf',"网易WDF动画",0x65C5B7EE)) --当前
end

function 聊天记录:打开()
	if self.可视 then
		self.窗口时间 = 0
		self.可视 = false
		self.资源组 = nil
		return
	else
		insert(tp.窗口_,self)
		self:加载数据()
		self.选中 = 3
		tp.运行时间 = tp.运行时间 + 1
	    self.窗口时间 = tp.运行时间
	    self.可视 = true
	end
end

function 聊天记录:加载数据()
	local 资源 = tp.资源
	local 按钮 = tp._按钮
	local 自适应 = tp._自适应

	self.资源组={
		[1]	= 自适应.创建(0,1,450,470,3,9),
		[2]	= 自适应.创建(2,1,355,385,3,9),
		[3] = 按钮.创建(自适应.创建(12,4,60,22,1,3),0,0,4,true,true," 系 统"), --系统
		[4] = 按钮.创建(自适应.创建(12,4,60,22,1,3),0,0,4,true,true," 世 界"), --世界
		[5] = 按钮.创建(自适应.创建(12,4,60,22,1,3),0,0,4,true,true," 队 伍"), --队伍
		[6] = 按钮.创建(自适应.创建(12,4,60,22,1,3),0,0,4,true,true," 帮 派"),	--帮派
		[7] = 按钮.创建(自适应.创建(12,4,60,22,1,3),0,0,4,true,true," 当 前"),	--当前
	}
	for i=3,7 do
		self.资源组[i]:绑定窗口_(self.ID)
	end
end
function 聊天记录:显示(dt,x,y)
	self.焦点 = false
	self.资源组[1]:显示(self.x,self.y)

	tp.窗口标题背景_:显示(self.x-90+self.资源组[1].宽度/2,self.y)
    引擎.场景.字体表.标题字体:显示(self.x+self.资源组[1].宽度/2,self.y+3,"聊天记录")
	for i=3,7 do
		self.资源组[i]:更新(x,y)
		if self.选中 == i then
			self.资源组[i]:显示(self.x+30+350,self.y+40+20+(i-3)*30,true,1)
		else
		    self.资源组[i]:显示(self.x+30+340,self.y+40+20+(i-3)*30,true,1)
		end
		if self.资源组[i]:事件判断() then
			self.选中 = i
		end
	end
	self.资源组[2]:显示(self.x+30,self.y+40)
	self.记录[self.选中]:更新(x,y)
	self.记录[self.选中]:显示(self.x+35,self.y+65)
	if self:检查点(x,y) then
		if 引擎.取鼠标滚轮() >0 then--鼠标上滚动
			if self.记录[self.选中].滚动值 < #self.记录[self.选中].显示表 -20 then
				self.记录[self.选中]:滚动(1)
			end
		elseif  引擎.取鼠标滚轮() <0  then--鼠标下滚动
			if self.记录[self.选中].滚动值 > 0 then
				self.记录[self.选中]:滚动(-1)
			end
		end
	end
	if self.战斗移动 and tp.战斗中 then
		if self:检查点(x,y)  then
		    if 引擎.鼠标按下(左键) then
		        self:初始移动(x,y)
		    end
		    if 引擎.鼠标按住(左键)  then
				self:开始移动(x,y)
		    end
		end
	end

end


function 聊天记录:检查点(x,y)
	if self.资源组 ~= nil and self.资源组[1]:是否选中(x,y)  then
		return true
	end
end


function 聊天记录:初始移动(x,y)
	tp.运行时间 = tp.运行时间 + 1
	if not tp.消息栏焦点 then
		self.窗口时间 = tp.运行时间
	end
	if not self.焦点 then
		tp.移动窗口 = true
	end
	if self.鼠标 and  not self.焦点 then
		self.xx = x - self.x
		self.yy = y - self.y
	end
end

function 聊天记录:开始移动(x,y)
	if self.鼠标 then
		self.x = x - self.xx
		self.y = y - self.yy
	end
end

return 聊天记录